package com.fruit.service.order;

import java.util.List;
import java.util.Map;

import com.fruit.pojo.order.DSHOrder;
import com.fruit.pojo.order.MyOrder;
import com.fruit.pojo.order.Order;
import com.fruit.pojo.pay.TransactionFlow;

/**
 * 
 * 订单接口类
 *
 * @author shibeilei
 * @version 2017.12.01 16:54
 *
 */
public interface OrderManager {

	
	/**
	 * 修改订单状态
	 * @param tradeId tradeId
	 * @param tf tf
	 * @return 返回修改结果
	 * @author admin
	 * @version 2017
	 */
	 Map<String, Object> updateOrderState(String tradeId, TransactionFlow tf);
	
	/**
	 * 更新订单自动取消状态
	 * @param tradeId tradeId
	 * @param order order
	 * @param dshOrder dshOrder
	 * @return 返回结果
	 * @author shibeilei
	 * @version 2017
	 */
	Map<String, Object> updateAutoCancelOrder(String tradeId, Order order, DSHOrder dshOrder);
	
	/**
	 * 插入订单自动退订队列
	 * @param orderId orderId
	 * @author admin
	 * @version 2017
	 */
	void newSaveAutoCancelOrder(long orderId);
	
	/**
	 * 插入订单自动退订队列
	 * @param orderId orderId
	 * @author admin
	 * @version 2017
	 */
	void saveAutoCancelOrder(long orderId);
	
	/**
	 * 我的订单
	 * @param params 用户ID 分页
	 * @return List<OrderGoods>
	 */
	List<MyOrder> getMyOrderByUserId(Map<String, Object> params);
	
}
